#pragma once
#include "defines.h"

class GlobalVariables
{
public:
	~GlobalVariables();
	static GlobalVariables* GetInstance();

	uint64 GetScore() const;
	uint64 GetHighScore() const;
	void SetScore(uint64 score);
	void SetHighScore(uint64 highScore);
	void AddScore(int blocks, int multiplier);

	void SetLineSpeed(float speed) {m_Speed = speed;}
	float GetLineSpeed() const {return m_Speed;}

private:
	GlobalVariables();

	static GlobalVariables* m_pGlobalVariables;

	uint64 m_Score,
		   m_HighScore;
	float m_Speed;

	static const int SCORE_BASE_VALUE = 50;
	static const int SCORE_EXTRA_VALUE = 20;
	static const uint64 MAX_SCORE = 999999999999999999;
};

